home *** CD-ROM | disk | FTP | other *** search
/ Champak 141 / (Vol 141) Oct 17 2011.iso / Games / Clueless.swf / scripts / Forms / LevelClearedForm.as < prev    next >
Encoding:
Text File  |  2011-10-17  |  10.4 KB  |  316 lines

  1. package Forms
  2. {
  3.    import Common.SoundManager;
  4.    import flash.display.*;
  5.    import flash.events.*;
  6.    import flash.geom.*;
  7.    import flash.system.*;
  8.    import flash.text.*;
  9.    import flash.utils.*;
  10.    
  11.    [Embed(source="/_assets/assets.swf", symbol="Forms.LevelClearedForm")]
  12.    public class LevelClearedForm extends CluelessBaseForm
  13.    {
  14.        
  15.       
  16.       internal var levelname:String;
  17.       
  18.       public var _tfLevelName:TextField;
  19.       
  20.       public var _mcRankDiamonds:MovieClip;
  21.       
  22.       public var _slot0:ClothingSlot;
  23.       
  24.       public var _slot2:ClothingSlot;
  25.       
  26.       public var _slot3:ClothingSlot;
  27.       
  28.       public var _unlock_mc:MovieClip;
  29.       
  30.       public var _mcModels:MovieClip;
  31.       
  32.       public var _slot1:ClothingSlot;
  33.       
  34.       public var _slot4:ClothingSlot;
  35.       
  36.       protected var _aModels:Array;
  37.       
  38.       private var ending:int = 0;
  39.       
  40.       public var _model1:DressupModel;
  41.       
  42.       public var _model2:DressupModel;
  43.       
  44.       public var _model0:DressupModel;
  45.       
  46.       public var _tfLevelScore:TextField;
  47.       
  48.       public var _tfAverageGrade:TextField;
  49.       
  50.       public var _bNext:Button;
  51.       
  52.       public var _tfTime:TextField;
  53.       
  54.       public var _tfTotalScore:TextField;
  55.       
  56.       internal var _bItemsUnlocked:Boolean = false;
  57.       
  58.       public var _bMenu:Button;
  59.       
  60.       public var _tfClothesUnlocked:TextField;
  61.       
  62.       public function LevelClearedForm()
  63.       {
  64.          _bItemsUnlocked = false;
  65.          ending = 0;
  66.          super();
  67.          Music = "JoyMusic";
  68.          _bNext.addEventListener(MouseEvent.CLICK,onNext,false,0,true);
  69.       }
  70.       
  71.       public static function convertTimeToString(param1:int) : String
  72.       {
  73.          var _loc2_:String = null;
  74.          var _loc3_:String = null;
  75.          var _loc4_:String = null;
  76.          var _loc5_:int = 0;
  77.          var _loc6_:int = 0;
  78.          param1 /= 1000;
  79.          _loc5_ = param1 % 60;
  80.          param1 -= _loc5_;
  81.          param1 /= 60;
  82.          _loc6_ = param1 % 60;
  83.          param1 -= _loc6_;
  84.          param1 /= 60;
  85.          _loc2_ = _loc5_.toString();
  86.          _loc3_ = _loc6_.toString();
  87.          _loc4_ = param1.toString();
  88.          if(_loc2_.length < 2)
  89.          {
  90.             _loc2_ = "0" + _loc2_;
  91.          }
  92.          if(_loc3_.length < 2)
  93.          {
  94.             _loc3_ = "0" + _loc3_;
  95.          }
  96.          if(_loc4_.length < 2)
  97.          {
  98.             _loc4_ = "0" + _loc4_;
  99.          }
  100.          return _loc4_ + ":" + _loc3_ + ":" + _loc2_;
  101.       }
  102.       
  103.       override public function onFocus() : void
  104.       {
  105.          Music = "JoyMusic";
  106.          super.onFocus();
  107.          if((Profile.CurrentProfile.TutorialMask & Profile.kTutorial_DressupMask) == 0)
  108.          {
  109.             if(_mcTutorial == null)
  110.             {
  111.                setTutorial(new MCTutorialUnlock());
  112.             }
  113.          }
  114.          if(levelname != "Tutorial")
  115.          {
  116.             switch(_tfAverageGrade.text.charAt(0))
  117.             {
  118.                case "A":
  119.                   Profile.CurrentProfile.incrementA();
  120.                   Storage.getInstance().saveProfiles();
  121.                   if(Profile.CurrentProfile.Average_A == 3)
  122.                   {
  123.                      AchievementsList.showAchievement("fashion guru");
  124.                   }
  125.                   else if(Profile.CurrentProfile.Average_A == 15)
  126.                   {
  127.                      AchievementsList.showAchievement("fashion queen");
  128.                   }
  129.                   else if(Profile.CurrentProfile.Average_A == 25)
  130.                   {
  131.                      AchievementsList.showAchievement("fashion goddess");
  132.                   }
  133.                   break;
  134.                case "B":
  135.                   if(Profile.CurrentProfile.incrementB() == 3)
  136.                   {
  137.                      AchievementsList.showAchievement("trendsetter");
  138.                   }
  139.                   Storage.getInstance().saveProfiles();
  140.                   break;
  141.                case "C":
  142.                   if(Profile.CurrentProfile.incrementC() == 3)
  143.                   {
  144.                      AchievementsList.showAchievement("fashionista");
  145.                   }
  146.                   Storage.getInstance().saveProfiles();
  147.             }
  148.          }
  149.          if(Profile.CurrentProfile.Ending == 1)
  150.          {
  151.             onBack(new MouseEvent(""));
  152.          }
  153.       }
  154.       
  155.       override public function onUnfocus() : void
  156.       {
  157.          bChangeMusic = true;
  158.          super.onUnfocus();
  159.       }
  160.       
  161.       public function init(param1:DressupLevelInfo) : *
  162.       {
  163.          var _loc2_:int = 0;
  164.          var _loc3_:int = 0;
  165.          var _loc4_:ClothingSlot = null;
  166.          var _loc5_:String = null;
  167.          var _loc6_:int = 0;
  168.          var _loc7_:Level = null;
  169.          var _loc8_:Level = null;
  170.          var _loc9_:PartTemplate = null;
  171.          var _loc10_:Part = null;
  172.          var _loc11_:ScoreObject = null;
  173.          SoundManager.getInstance().playSound("StageClearedSound");
  174.          _loc3_ = 0;
  175.          while(_loc3_ < 5)
  176.          {
  177.             (_loc4_ = getChildByName("_slot" + _loc3_) as ClothingSlot).setHiddenAndClickable();
  178.             _loc3_++;
  179.          }
  180.          _tfLevelScore.text = param1.CurrentScore.toString();
  181.          levelname = param1.LevelName;
  182.          if(levelname != "Tutorial")
  183.          {
  184.             _tfLevelName.text = levelname.substr(6);
  185.          }
  186.          else
  187.          {
  188.             _tfLevelName.text = "1-0";
  189.          }
  190.          param1.LevelTime = getTimer() - param1.StartTime;
  191.          Profile.CurrentProfile.unlockLevel(Database.getInstance().getLevel(param1.LevelName).Next);
  192.          Profile.CurrentProfile.LastRanking = param1.getRankDiamonds();
  193.          Profile.CurrentProfile.LastTime = param1.LevelTime;
  194.          if(levelname != "Tutorial")
  195.          {
  196.             Profile.CurrentProfile.TotalTime += param1.LevelTime;
  197.             Profile.CurrentProfile.TotalScore += param1.CurrentScore;
  198.          }
  199.          _tfTime.text = convertTimeToString(param1.LevelTime);
  200.          _loc2_ = Profile.CurrentProfile.TotalScore;
  201.          _tfTotalScore.text = _loc2_.toString();
  202.          _tfAverageGrade.text = DressupResultForm.getLetterGrade(param1.CurrentTotalLetterGrade / param1.TotalFigures);
  203.          _aModels = Model.extractFromStage(this);
  204.          _loc3_ = 0;
  205.          while(_loc3_ < _aModels.length)
  206.          {
  207.             if(param1.TopModels[_loc3_].dressupmodel.isDressed())
  208.             {
  209.                _aModels[_loc3_].clone(param1.TopModels[_loc3_].dressupmodel);
  210.             }
  211.             _loc3_++;
  212.          }
  213.          _loc6_ = 0;
  214.          for each(_loc5_ in param1.UsedItems)
  215.          {
  216.             if(!Profile.CurrentProfile.isItemUnlocked(_loc5_))
  217.             {
  218.                Profile.CurrentProfile.unlockItem(_loc5_);
  219.                if(Profile.CurrentProfile.isItemUnlocked(_loc5_))
  220.                {
  221.                   if((_loc9_ = MainDocument.Package.getTemplateByName(_loc5_)).Category != "body" && _loc9_.Category != "bra")
  222.                   {
  223.                      if(_loc6_ < 5)
  224.                      {
  225.                         _loc10_ = _loc9_.createPart();
  226.                         (_loc4_ = getChildByName("_slot" + _loc6_) as ClothingSlot).clean();
  227.                         _loc10_.ResizePart(_loc4_.width);
  228.                         _loc10_.center();
  229.                         _loc4_.addChild(_loc10_);
  230.                         _loc6_++;
  231.                      }
  232.                      _bItemsUnlocked = true;
  233.                   }
  234.                }
  235.             }
  236.          }
  237.          _loc7_ = Database.getInstance().getLevel(levelname);
  238.          _loc8_ = Database.getInstance().getLevel(_loc7_.Next);
  239.          if(_loc7_.Next == "EndingLevel")
  240.          {
  241.             _loc2_ = Profile.CurrentProfile.TotalScore;
  242.             _loc11_ = new ScoreObject(Profile.CurrentProfile.Name,_loc2_,convertTimeToString(Profile.CurrentProfile.TotalTime));
  243.             Storage.getInstance()._scores.push(_loc11_);
  244.             Storage.getInstance()._scores.sortOn("Score",Array.DESCENDING | Array.NUMERIC);
  245.             Storage.getInstance().storeHighScore();
  246.          }
  247.          _tfClothesUnlocked.visible = _bItemsUnlocked;
  248.          _unlock_mc.visible = _bItemsUnlocked;
  249.          Storage.getInstance().saveProfiles();
  250.          if(_loc7_.Next == "EndingLevel")
  251.          {
  252.             if(Profile.CurrentProfile.PowerupsUsed > 0)
  253.             {
  254.                AchievementsList.showAchievement("crown");
  255.             }
  256.             else
  257.             {
  258.                AchievementsList.showAchievement("power");
  259.             }
  260.             Storage.getInstance().saveProfiles();
  261.          }
  262.          else if(_loc7_.Next == "")
  263.          {
  264.             setFormPermanent(new UpsellBeatForm());
  265.          }
  266.       }
  267.       
  268.       protected function onNext(param1:MouseEvent) : void
  269.       {
  270.          var _loc2_:Level = null;
  271.          var _loc3_:Level = null;
  272.          var _loc4_:BaseForm = null;
  273.          var _loc5_:CutsceneForm = null;
  274.          _loc2_ = Database.getInstance().getLevel(levelname);
  275.          _loc3_ = Database.getInstance().getLevel(_loc2_.Next);
  276.          if(_loc2_.Next != "EndingLevel")
  277.          {
  278.             if(_loc2_.Next == "")
  279.             {
  280.                setFormPermanent(new UpsellBeatForm());
  281.             }
  282.             else if(_loc2_.Name == "Tutorial")
  283.             {
  284.                if(Profile.CurrentProfile.MapPressTutorial)
  285.                {
  286.                   Profile.CurrentProfile.MapPressTutorial = false;
  287.                   Profile.CurrentProfile.unlockLevel(_loc3_.Name);
  288.                   Profile.CurrentProfile.TutorialMask |= Profile.kTutorial_DressupMask;
  289.                   onBack(new MouseEvent(""));
  290.                }
  291.                else
  292.                {
  293.                   _loc4_ = MapForm.getLevelForm(_loc3_.Name);
  294.                   setFormPermanent(_loc4_);
  295.                }
  296.             }
  297.             else if(_loc2_.Store == _loc3_.Store)
  298.             {
  299.                _loc4_ = MapForm.getLevelForm(_loc3_.Name);
  300.                setFormPermanent(_loc4_);
  301.             }
  302.             else
  303.             {
  304.                onBack(new MouseEvent(""));
  305.             }
  306.          }
  307.          else
  308.          {
  309.             (_loc5_ = new CutsceneForm()).init(null,"MainEnding1");
  310.             Profile.CurrentProfile.Ending = 1;
  311.             setForm(_loc5_);
  312.          }
  313.       }
  314.    }
  315. }
  316.